// 定义默认状态
const defaultState = {
  // 显示loading的显示和隐藏
  showLoading: false,
  // 弹框提示
  showAlert: false,
  // 弹框类型 success|info|warning|error
  alertType: 'success',
  // 弹框内容
  alertContent: '弹框内容哦'
}
// 导出一个函数
let reducer = (state = defaultState, action) => {
  // 深拷贝state
  let newState = JSON.parse(JSON.stringify(state));
  switch (action.type) {
    // 控制loading的显示
    case 'showLoadingFn':
      newState.showLoading = true;
      break;
    // 控制loading的隐藏
    case "hidenLoadingFn":
      newState.showLoading = false;
      break;
    // 控制alert显示
    case 'showAlert':
      newState.showAlert = true;
      newState.alertType = action.value.alertType;
      newState.alertContent = action.value.alertContent;
      break;
    // 控制alert隐藏
    case 'hideAlert':
      newState.showAlert = false;
      break;
    default:
      break;
  }
  return newState;
}

export default reducer